package br.com.afi.util.hibernate.validator;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import javax.validation.Constraint;

/**
 * Anotação para validar se a String informada é um número.<br>
 * Valores padrão:<br>
 * <b>integerDigits:</b> -1<br>
 * <b>fractionDigits:</b> -1<br>
 * <b>message:</b> {validator.number}<br>
 * <b>exactMatch:</b> false<br>
 * 
 * @author André de Fontana Ignacio
 * @version 1.0
 */
@Target( { ElementType.FIELD, ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Constraint(validatedBy = NumberStrValidator.class)
public @interface NumberStr
{
	int integerDigits() default -1;

	int fractionDigits() default -1;

	boolean exactMatch() default false;

	String message() default "{validator.number}";
}
